package com.hqyj.mapper;

import com.hqyj.pojo.Order;
import com.hqyj.pojo.Product;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.springframework.stereotype.Repository;
import tk.mybatis.mapper.common.Mapper;

import java.util.List;

@Repository
public interface ProductMapper extends Mapper<Product> {

    List<Product> selectProductAndProductImage();

    List<Product> findAllProduct(@Param("categoryId") Integer categoryId,@Param("reviewCount") Integer reviewCount,@Param("searchStr") String searchStr);

    /**
     * 根据ID查找产品信息
     * @return
     */
    Product selectId(@Param("id") Integer id);
    //查所有商品信息
    @Select("select * from product")
     List<Product> queryAll();
    
     Boolean deleteProductById(Integer id);

    int update(Product product);


    /**
     * 根据产品ID集合查产品信息（李勇）
     * @param list
     * @return
     */
    List<Product> selectByListId(List<Integer> list);
/**
     * 根据ID删除一个产品 逻辑删除
     * @param productId
     * @return
     */
    Integer deleteProductsById(Integer productId);

    Integer deleteProductByIds(@Param("oIdsList") List<String> oIdsList);

    /**
     * 张林森
     * 查询订单项和产品
     * @return  List<Product>
     */
    List<Product>  queryOrderProduct(Integer oId,String inputName);
}